In existing computer systems, I/O adapters have stored identifier (ID) functions which are detected by the system during its initialization process, and enable the system to determine if its I/O configuration has changed since power was last turned off. If the configuration has not changed, the initialization process automatically conditions the adapters to operating states suited to the existing configuration. Thus, it is not necessary for the system to repeat any "setup" procedures associated with establishing the operating states of this configuration.
When an I/O adapter card is first installed into an attachment slot of the system, which previously was either vacant or connected to a different adapter, a setup process is initiated by the system which requires interaction between the system and a user. In this process, configuration state information relating to the newly installed adapter card is created by the system and stored in a non-volatile system memory (NVRAM) along with a copy of the adapter's ID function. Each time that power is turned on the system executes a power on self test (POST) procedure in which it determines (among other things) if ID's associated with the slots are the same as they were when power was last turned off. If the ID's haven't changed, the system causes associated configuration information to be transferred from NVRAM to volatile registers in respective adapter cards, thereby conditioning the adapter cards to operating states suited to the current configuration of the system. If the ID's have changed, another setup process is initiated.
For details of the foregoing, refer to U. S. Pat. No. 5,038,320 to Heath et al, assigned to the assignee of the present application.
The setup procedure can be time consuming, inasmuch as it may require the system user to deactivate and reboot the system several times, but it generally does not overly delay productive use of the system since adapter installation changes usually are made infrequently.
However, in some systems, frequent changes of adapter configurations may be necessary for practical operation of the system. For example, a notebook computer system may be used at some times as a stand-alone portable computer and at other times as part of a desktop system. In the desktop configuration, the computer may be connected to an expansion unit which provide additional functions such as communication, printing, extra memory/storage, etc.
In such frequently changing environments it is desirable to be able to avoid having to repeat setup processes to recreate configuration state information that the system has previously created. The present invention provides such capability.